axios.interceptors.request.use(config => {
    var token = $.cookie("ATOKEN");   //token=xxxxxxxx
    var expiresTime = $.cookie("expiresTime");
    //获取当前的时间
    var now = new Date().getSeconds();
    var time = expiresTime-now
    if(time>0&&time<300){//离过期不到五分钟
        //发送请求获取最新的token
        refresh();
    }
    var lastTime = $.cookie("lastTime");
    if(now>expiresTime&&(expiresTime-lastTime)>300&&(now-lastTime)<1800){//当前这次操作是在过期之后  上一次操作是在离过期五分钟之前  两次操作不超过半小时
        //发送请求获取最新的token
        refresh();
    }
    //如果已经登录了,每次都把token作为一个请求头传递过程
    if (token && token.length > 0) {
        // 让每个请求携带token--['X-Token']为自定义key 请根据实际情况自行修改
        config.headers['Authorization'] = "bearer "+token;
    }
    //记录上一次的操作时间
    $.cookie('lastTime',new Date().getSeconds(),{
        expires:7, //过期期间 如果是数字单位天，可以是日期
        path:'/', //根及其所有的子子孙孙都可以获取
        domain:'hrm.com', //域 www.hrm.com user.hrm.com xxx.hrm.com
        secure:false //是否支持https
    });
    return config
}, error => {
    Promise.reject(error)
})

function refresh() {
    var rtoken = $.cookie("R_TOKEN");
    var params = {
        rtoken : rtoken,
        type : 1
    }
    this.$http.post("/auth/loginUser/refresh",params).then(res=>{
        var ajaxResult = res.data;
        if(ajaxResult.success){
            var  A_TOKEN = ajaxResult.resultObj.access_token;
            var  R_TOKEN = ajaxResult.resultObj.refresh_token;
            var  expire_in = ajaxResult.resultObj.expires_in;
            //获取当前时间
            var expireTime = new Date().getSeconds()+expire_in;
            $.cookie('expireTime',expireTime,{
                expires:7,
                path:'/',
                domain:'hrm.com',
                secure:false
            });
            $.cookie('A_TOKEN',A_TOKEN,{
                expires:7,
                path:'/',
                domain:'hrm.com',
                secure:false
            });
            $.cookie('R_TOKEN',R_TOKEN,{
                expires:7,
                path:'/',
                domain:'hrm.com',
                secure:false
            });
            return;
        }else{
            location.href="http://user.hrm.com:6003/login.html";
        }
    })
}